Universidad de Costa Rica, escuela de Geografía

GF-0604 Procesamiento de datos geográficos

Profesor: Manuel Vargas del Valle

Introducción:

Este informe tiene como finalidad demostrar la utilidad de utilizar datos y realizar diferentes estadísticos con ellos como tablas y gráficos con diferentes paquetes de R. Estos paquetes se encuentran especificados en la sección de carga de paquetes y lectura de datos. Además, es importante señalar que este página web cuenta con una serie de botones “code”, que permiten al lector observar el código utilizado para generar cada uno de los productos.

Desarrollo:

knitr::opts_chunk$set(echo = TRUE)

Carga de paquetes y lectura de datos:

### Carga de paquetes:
library(dplyr)
library(ggplot2)
library(plotly)
library(DT)
library(readr)
library(readxl)
library(lubridate)
Est_pol <-
read_xls("estadisticaspoliciales2021.xls") 

Tabla 1. DT interactiva de las estadísticas policiales del (OIJ):

Est_pol %>%
  dplyr::select(Delito, Fecha, Victima, Edad, Genero, Provincia, Canton) %>%
  datatable(colnames = c(
    "Delito",
    "Fecha",
    "Víctima",
    "Edad",
    "Género",
    "Provincia",
    "Cantón"
  ), options = list(pageLength = 5, language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json')))
## Warning in instance$preRenderHook(instance): It seems your data is too big
## for client-side DataTables. You may consider server-side processing: https://
## rstudio.github.io/DT/server.html

Gráfico 1. Gráfico de la cantidad de delitos por tipo de delito registrados por el (OIJ) en el 2021:

# Gráfico de la cantidad de delitos por tipo de delito:

Delitos <-
Est_pol %>%
  count(Delito) %>%
  ggplot(aes(x = reorder(Delito, n), y = n)) + 
  geom_bar(stat = "identity") +
coord_flip() +
ggtitle("Cantidad de delitos por tipo de delito") + 
  xlab("Tipo de delito") + 
  ylab("Cantidad de delitos") + 
  theme_minimal()
ggplotly(Delitos) %>% 
  config(locale = 'es')

Grafico 2. Muestra interactivamente la cantidad de delitos por mes registrados por el (OIJ) en el 2021:

Del_mes <- Est_pol %>%
  dplyr::select(Fecha, Delito, Hora)
graph2 <- 
Del_mes %>% mutate(mes = month(Fecha, label = FALSE)) %>%
  ggplot() +
  geom_bar(aes(x = mes), fill = "navy", color = "gold") + 
  ggtitle("Cantidad de delitos por mes") + 
  xlab("Mes (1-11)") + 
  ylab("Cantidad") + 
  theme_minimal() 
ggplotly(graph2) %>%
  config(locale = 'es')